package com.turing.post.organization.util;

import java.math.BigInteger;
import java.util.List;

import javax.ejb.Local;
import javax.ejb.Remote;

import com.turing.post.util.PCPSApplicationException;
import com.turing.post.util.PCPSWebInput;

/**
 * 发卡商资费上下限业务接口
 * @author liun
 * @date 2013-05-27
 */
@Remote
@Local
public interface IssueFeePolicyLimitBusiness {

	
	/**
	 * 新增发卡商资费上下限信息
	 * @param entity
	 */
	public void addIssueFeePolicyLimit(PCPSWebInput webInput, IssueFeePolicyLimit entity) throws PCPSApplicationException;
	
	/**
	 * 修改发卡商资费上下限信息
	 * @param entity
	 */
	public void modifyIssueFeePolicyLimit(PCPSWebInput webInput, IssueFeePolicyLimit entity) throws PCPSApplicationException;
	
	/**
	 * 根据发卡商号获取发卡商各业务资费上下限列表
	 * @param issueCompnyNo
	 * @return
	 */
	public List<IssueFeePolicyLimit> getIssueFeePolicyLimitListByCompNo(PCPSWebInput webInput, String businessType, Integer page) throws PCPSApplicationException;
	
	/**
	 * 根据发卡商号和业务类型获取资费上下限信息
	 * @param issueCompnyNo
	 * @param businessType
	 * @return
	 */
	public IssueFeePolicyLimit getIssueFeePolicyLimitByCompNoAndType(PCPSWebInput webInput, String businessType) throws PCPSApplicationException;
	

	/**
	 * 总记录数
	 * @param issueCompnyNo
	 * @return
	 */
	public BigInteger getIssueFeePolicyLimitListTotal(PCPSWebInput webInput, String businessType) throws PCPSApplicationException;
	
	/**
	 * 发卡商资费上下限生效审核
	 * @param webInput
	 * @param businessType
	 * @param authRemark
	 * @throws PCPSApplicationException
	 */
	public void authIssueFeePolicyLimitEffective(PCPSWebInput webInput, String businessType, String authRemark) throws PCPSApplicationException;
}
